package com.ee.chat.common.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ee.chat.common.entity.HostCallContent;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * Mapper接口
 * </p>
 *
 * @author Shane
 * @since 2019-10-06
 */
public interface HostCallContentMapper extends BaseMapper<HostCallContent> {
    IPage<Map<String, Object>> list(Page page, @Param("userId") Integer userId, @Param("status") Integer status,
                                    @Param("beginTime") Date beginTime, @Param("endTime") Date endTime);

    /**
     * 查询用户审核通过的记录
     * @Author Shane
     * @Date 2020/2/10 14:57
     * @param
     * @return
     */
    HostCallContent selectByUserIdAndContent(@Param("userId") Integer userId, @Param("content") String content);

    int getByUserIdAndContentCount(@Param("userId") Integer userId, @Param("content") String content);

    /**
     * 获取系统内置的招呼用语
     * @Author Shane
     * @Date 2020/8/19 16:40
     * @param
     * @return
     */
    List<HostCallContent> getSysCallContent();

    /**
     * 获取排序第一的记录
     * @Author Shane
     * @Date 2020/8/19 17:21
     * @param status 为空时查询通过的，为0时查询待审核和通过的
     * @return
     */
    HostCallContent selectFirstHostCallCentent(@Param("userId") Integer userId, @Param("status") Integer status);

    /**
     * 获取指定内容的用户招呼语
     * @Author Shane
     * @Date 2020/8/23 22:10
     * @param
     * @return
     */
    int getUserCallContent(@Param("content") String content);

    /**
     * 获取用户招呼数量
     * @Author Shane
     * @Date 2020/9/1 10:53
     * @param
     * @return
     */
    int getUserCallContentNum(@Param("userId") Integer userId);
}